return_period_list($tempList);
foreach($tempList as $period) {
$period_list[] = array("timeperiod_id" => $period->getId(), "timeperiod_name" => $period->getName());
}
if(isset($_GET['request'])) {
if($_GET['request'] == "delete" && $_GET['section'] == 'contacts') {
if(!empty($_GET['contactgroup_id'])) {
$membership = NagiosEscalationContactgroupPeer::retrieveByPK($_GET['contactgroup_id']);
if($membership) {
$membership->delete();
$success = "Contact Group Deleted";
}
}
else if(!empty($_GET['contact_id'])) {
$c = new Criteria();
$c->add(NagiosEscalationContactPeer::ESCALATION, $_GET['id']);
$c->add(NagiosEscalationContactPeer::CONTACT, $_GET['contact_id']);
$membership = NagiosEscalationContactPeer::doSelectOne($c);
if($membership) {
$membership->delete();
$success = "Contact deleted.";
}
}
unset($_GET['request']);
}
}
// Action Handlers
if(isset($_POST['request'])) {
if($_POST['request'] == 'escalation_modify_general') {
// Field Error Checking
if(count($_POST['escalation_manage'])) {
foreach($_POST['escalation_manage'] as $tempVariable)
$tempVariable = trim($tempVariable);
}
if((isset($_POST['escalation_manage_enablers']['first_notification']) && !is_numeric($_POST['escalation_manage']['first_notification'])) ||
(isset($_POST['escalation_manage_enablers']['first_notification']) && !($_POST['escalation_manage']['first_notification'] >= 1)) ||
(isset($_POST['escalation_manage_enablers']['last_notification']) && !is_numeric($_POST['escalation_manage']['last_notification'])) ||
(isset($_POST['escalation_manage_enablers']['last_notification']) && !($tempData['service_manage']['last_notification'] >= 1)) ||
(isset($_POST['escalation_manage_enablers']['notification_interval']) && !is_numeric($tempData['service_manage']['notification_interval'])) ||
(isset($_POST['escalation_manage_enablers']['notification_interval']) && !($tempData['service_manage']['notification_interval'] >= 1)) ) {
$error = "Incorrect values for fields. Please verify.";
}
if($escalation) {
$escalation->setDescription($_POST['escalation_manage']['escalation_description']);
$escalation->setFirstNotification($_POST['escalation_manage']['first_notification']);
$escalation->setLastNotification($_POST['escalation_manage']['last_notification']);
$escalation->setNotificationInterval($_POST['escalation_manage']['notification_interval']);
$escalation->setEscalationPeriod($_POST['escalation_manage']['escalation_period']);
if(isset($_POST['escalation_manage']['escalation_options_down'])) {
$escalation->setEscalationOptionsDown(true);
}
else {
$escalation->setEscalationOptionsDown(false);
}
if(isset($_POST['escalation_manage']['escalation_options_unreachable'])) {
$escalation->setEscalationOptionsUnreachable(true);
}
else {
$escalation->setEscalationOptionsUnreachable(false);
}
if(isset($_POST['escalation_manage']['escalation_options_ok'])) {
$escalation->setEscalationOptionsOk(true);
}
else {
$escalation->setEscalationOptionsOk(false);
}
if(isset($_POST['escalation_manage']['escalation_options_up'])) {
$escalation->setEscalationOptionsUp(true);
}
else {
$escalation->setEscalationOptionsUp(false);
}
if(isset($_POST['escalation_manage']['escalation_options_warning'])) {
$escalation->setEscalationOptionsWarning(true);
}
else {
$escalation->setEscalationOptionsWarning(false);
}
if(isset($_POST['escalation_manage']['escalation_options_unknown'])) {
$escalation->setEscalationOptionsUnknown(true);
}
else {
$escalation->setEscalationOptionsUnknown(false);
}
if(isset($_POST['escalation_manage']['escalation_options_critical'])) {
$escalation->setEscalationOptionsCritical(true);
}
else {
$escalation->setEscalationOptionsCritical(false);
}
$escalation->save();
$success = "Escalation modified.";
unset($_GET['edit']);
}
}
else if($_POST['request'] == 'add_contactgroup_command') {
if($lilac->escalation_has_contactgroup($_GET['id'], $_POST['escalation_manage']['contactgroup_add']['contactgroup_id'])) {
$error = "That contact group already exists in that list!";
unset($_POST['escalation_manage']);
}
else {
$membership = new NagiosEscalationContactgroup();
$membership->setNagiosEscalation($escalation);
$membership->setContactgroup($_POST['escalation_manage']['contactgroup_add']['contactgroup_id']);
$membership->save();
$success = "New Escalation Contact Group Link added.";
unset($_POST['escalation_manage']);
}
}
else if($_POST['request'] == 'add_contact_command') {
$c = new Criteria();
$c->add(NagiosEscalationContactPeer::ESCALATION, $_GET['id']);
$c->add(NagiosEscalationContactPeer::CONTACT, $_POST['escalation_manage']['contact_add']['contact_id']);
$membership = NagiosEscalationContactPeer::doSelectOne($c);
if($membership) {
$error = "That contact already exists in that list!";
}
else {
$tempContact = NagiosContactPeer::retrieveByPk($_POST['escalation_manage']['contact_add']['contact_id']);
if($tempContact) {
$membership = new NagiosEscalationContact();
$membership->setEscalation($_GET['id']);
$membership->setNagiosContact($tempContact);
$membership->save();
$success = "New Escalation Contact Link added.";
}
else {
$error = "That contact is not found.";
}
}
}
}
if(isset($_GET['id'])) {
if(!$lilac->get_escalation($_GET['id'], $escalation)) {
header("Location: welcome.php");
die();
}
}
$title = '';
if($escalation->getNagiosService() || $escalation->getNagiosServiceTemplate()) {
$title .= "Service ";
if($escalation->getNagiosServiceTemplate()) {
$title .= "Template " . $escalation->getNagiosServiceTemplate()->getName() . "";
$sublink = "service_template.php?id=" . $escalation->getNagiosServiceTemplate()->getId();
$subText = "Return To Service Template " . $escalation->getNagiosServiceTemplate()->getName();
}
else {
$title .= "" . $escalation->getNagiosService()->getDescription() . " On ";
if($escalation->getNagiosService()->getNagiosHostTemplate()) {
$title .= " Host Template " . $escalation->getNagiosService()->getNagiosHostTemplate()->getName() . "";
}
else if($escalation->getNagiosService()->getNagiosHost()) {
$title .= "Host " . "" . $escalation->getNagiosService()->getNagiosHost()->getName() . "";
}
$sublink = "service.php?id=" . $escalation->getNagiosService()->getId();
$subText = "Return To Service " . $escalation->getNagiosService()->getDescription();
}
}
else {
if($escalation->getNagiosHostTemplate()) {
$title .= "Host Template " . $escalation->getNagiosHostTemplate()->getName() . "";
$sublink = "host_template.php?id=" . $escalation->getNagiosHostTemplate()->getId();
$subText = "Return To Host Template " . $escalation->getNagiosHostTemplate()->getName();
}
else if($escalation->getNagiosHost()) {
$title .= "Host " . $escalation->getNagiosHost()->getName() . "";
$sublink = "hosts.php?id=" . $escalation->getNagiosHost()->getId();
$subText = "Return To Host " . $escalation->getNagiosHost()->getName();
}
else if($escalation->getNagiosHostgroup()) {
$title .= "Hostgroup " . $escalation->getNagiosHostgroup()->getName() . "";
$sublink = "hostgroups.php?id=" . $escalation->getNagiosHostgroup()->getId();
$subText = "Return To Hostgroup " . $escalation->getNagiosHostgroup()->getName();
}
}
// Build subnav
$subnav = array(
'general' => 'General',
'contacts' => 'Contacts'
);
print_header("Escalation Editor for " . $title);
?>
getDescription() . " Escalation Information", "100%");
print_subnav($subnav, $_GET['section'], "section", $_SERVER['PHP_SELF'] . "?id=" . $_GET['id']);
if($_GET['section'] == 'general') {
if(!$escalation->getService() && !$escalation->getServiceTemplate())
$escalation_image = $path_config['image_root'] . "server.gif";
else
$escalation_image = $path_config['image_root'] . "services.gif";
?>
|
|
getNagiosEscalationContacts();
$numOfContacts = count($contacts_list);
?>
|
Contacts Explicitly Linked to This Escalation: |
[ Delete ] |
getNagiosContact()->getName();?>: getNagiosContact()->getAlias();?> |
get_contact_list($temp_list);
$contacts_list = array();
foreach($temp_list as $tempContact) {
$contacts_list[] = array('contact_name' => $tempContact->getName(), 'contact_id' => $tempContact->getId());
}
?>
|
return_escalation_contactgroups_list($_GET['id'], $tempList);
foreach($tempList as $contactgroup) {
$contactgroups_list[] = array("contactgroup_id" => $contactgroup->getId(), "contactgroup_name" => $contactgroup->getName());
}
$numOfContactGroups = count($contactgroups_list);
?>
|
Contact Groups Explicitly Linked to This Escalation: |
[ Delete ] |
return_contactgroup_name($contactgroups_list[$counter]['contactgroup_id']);?>: return_contactgroup_alias($contactgroups_list[$counter]['contactgroup_id']);?> |
get_contactgroup_list($tempList);
foreach($tempList as $contactgroup) {
$contactgroups_list[] = array("contactgroup_id" => $contactgroup->getId(), "contactgroup_name" => $contactgroup->getName());
}
?>
|